package com.banesco.precargadepositos.interfaz.componentes;

import net.rim.device.api.system.DeviceInfo;
import net.rim.device.api.system.Display;
import net.rim.device.api.ui.Color;
import net.rim.device.api.ui.DrawStyle;
import net.rim.device.api.ui.Field;
import net.rim.device.api.ui.Font;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.component.LabelField;

/**
 * Control que representa la barra separadora entre el logo y los controles de la aplicacion
 * @author maguca
 *
 */
public class BarraSeparadora extends LabelField {

	/**
	 * Variable que posee la informacion si la barra es superior o inferior
	 * true si es superior false sino
	 */
	private boolean _superior;
	
	
	/**
	 * Constructor de la clase
	 * @param texto palabra que aparecera en la barra
	 */
	public BarraSeparadora(String texto, boolean superior){
		super(texto,Field.USE_ALL_WIDTH | DrawStyle.HCENTER);
		_superior = superior;
        if(DeviceInfo.getSoftwareVersion().charAt(0) == '7')
		if(_superior)
			setFont(Font.getDefault().derive(Font.ANTIALIAS_STANDARD,(int) (Font.getDefault().getHeight()* 1.1)));
		else	
			setFont(Font.getDefault().derive(Font.ANTIALIAS_STANDARD,(int) (Font.getDefault().getHeight()* 1.2)));
		
	}
	
	
	/**
	 * Metodo que obtiene el ancho preferido
	 */
    public int getPreferredWidth() {
        return Display.getWidth();
    }

    
    /**
     * Metodo que obtiene el ancho preferido
     */
    public int getPreferredHeight() {
        return (int) (getFont().getHeight()*1.4);
    }

    
    /**
     * Metodo que personaliza la posicion del control
     */
    public void layout(int width, int height) {
        super.layout(width, getPreferredHeight());
        setExtent(width, getPreferredHeight());
    }
            
    
    /**
     * Metodo que personaliza la funcion del pintado
     */
    public void paint(Graphics g) {

    	if(_superior)
    		g.setBackgroundColor(0x013469);
    	else
    		g.setBackgroundColor(0x318262);
        g.setColor(Color.WHITE);
    	g.clear();
        super.paint(g);
    }
}
